package com.example.test_1_24_springmvctest;

import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.ArrayList;
import java.util.List;

@RequestMapping("/message")
@RestController
public class MessageController {
    private List<MessageInfo> messageInfos = new ArrayList<>();
    // 发布留言
    @RequestMapping("/publish")
    public Boolean publishMessage(MessageInfo messageInfo){
        // 进行参数的校验
        if(!StringUtils.hasLength(messageInfo.getFrom()) || !StringUtils.hasLength(messageInfo.getTo())
        || !StringUtils.hasLength(messageInfo.getMessage())) {
            return false;
            // 前端校验是前端的事,后端校验是后端的事,两者不冲突
            // 原因: 1.这是两个团队的事,  2.发请求可能不通过前端的页面
            //      3. 后端可能会收到攻击, 不是非正常请求
        }
        // 添加留言
        messageInfos.add(messageInfo);
        return true;
    }

    // 返回所有留言
    @RequestMapping("/getMessageInfo")
    public List<MessageInfo> getMessageInfo(){
        return messageInfos;
    }
}
